home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / Documents / NeXTSTEP-faq / 3_WhatIs.txt < prev    next >
Text File  |  1996-04-17  |  17KB  |  352 lines

  1.  
  2. Subject: FAQ: 3 - What is...
  3.  
  4.  
  5.                                 3 WHAT IS ...
  6.  
  7.    What is ...
  8.  
  9.    This chapter tries to give you some overview over NEXTSTEP/OpenStep
  10.    software and related software. For a detailed description you should
  11.    contact the producer's WWW server. E.g. for more information about
  12.    OpenStep contact http://www.next.com/
  13.  
  14. 3.1 NEXTSTEP
  15.  
  16.    NEXTSTEP
  17.  
  18.    NEXTSTEP is a complete development and user environment by NeXT it
  19.    provides an unique GUI (graphical user interface), which currently
  20.    gets copied by several other OS provider like Microsoft, combined with
  21.    the currently most advanced and tested OS, named MACH. NeXT applied
  22.    several changes to the MACH kernel to add special features which makes
  23.    NEXTSTEP unique.
  24.  
  25.    NEXTSTEP comes with a lot of development kits (bundles of classes to
  26.    build on), like: Sound Kit, Indexing Kit, 3D Graphics Kit, Database or
  27.    EOF Kit and Application Kit. This will change with OpenStep.
  28.  
  29.    Bundled with NEXTSTEP are several user applications which enhance the
  30.    daily use dramatically: NeXTMail (a MIME compatible mail application),
  31.    Edit (a simple but powerful editor), FaxReader (for reading incoming
  32.    faxes, you are able to send faxes from every application which
  33.    supports printing), DigitalWebster (Webster's Ninth New Collegiate
  34.    Dictionary and Collegiate Thesaurus), Digital Librarian (indexing and
  35.    full text search utility, usable over groups of files) Preview (a
  36.    PostScript and TIFF display utility), Terminal (UNIX terminal
  37.    application for VT100 and TN3270 emulation), TeX (a well known
  38.    compiler for formatted text), SYBASE and ORACLE adapters (to contact
  39.    to SYBASE and ORACLE databases within EOF applications).
  40.  
  41.    One special thing about NEXTSTEP is the display system. NeXT uses DPS
  42.    (Display Post Script), which gives you true WYSIWYG on every NEXTSTEP
  43.    system. The window server supports PostScript Level II, Interactive
  44.    RenderMan and Photorealistic RenderMan (an distributed engine for fast
  45.    high quality rendering, based on Pixar's RenderMan).
  46.  
  47.    To be used in networks, NEXTSTEP supports NFS, NetInfo, Novell Netware
  48.    (as client only), Ethernet and Token Ring and different filesystems
  49.    (Mac, DOS, ISO 9660, High Sierra, Rock Ridge).
  50.  
  51.    For multimedia purposes NeXT uses Lempel-Ziv compression for text,
  52.    Audio Transform Compression for Sound (comparable to Sony MiniDisc),
  53.    JPEG for TIFF and Group 4 for Fax. Of course these are only standard
  54.    modes and NEXTSTEP is extensible to use other methods too.
  55.  
  56.    For system administration (remember that NEXTSTEP is using MACH as an
  57.    UNIX derivate), NeXT supplies several administration applications
  58.    which make it easy to configure NEXTSTEP as needed, like:
  59.    SimpleNetworkStarter, UserManager, PrintManager, NFSManager,
  60.    HostManager, NetInfo Manager, BuildDisk, Upgrader and the complete
  61.    documentation and manual pages online.
  62.  
  63. 3.2 MACH
  64.  
  65.    MACH
  66.  
  67.    MACH is the the basic OS layer NeXT uses for NEXTSTEP. It is a micro
  68.    kernel, which means it is extensible at runtime. Micro kernel often
  69.    stands for a small kernel size, too, but due to the compatibility to
  70.    BSD 4.3 MACH is currently about 1MB in size.
  71.  
  72.    Features of MACH are: loadable kernel services (extensions during
  73.    runtime), different scheduling algorithms, an advanced messaging
  74.    system, an advanced memory allocation mechanism (copy on demand, world
  75.    wide message broadcasting), true multitasking, multi threading and BSD
  76.    compatibility.
  77.  
  78. 3.3 OpenStep
  79.  
  80.    OpenStep
  81.  
  82.    OpenStep will be the next release of NeXT's NEXTSTEP with the ability
  83.    to be OS independent (NEXTSTEP depends on MACH). Therefore OpenStep
  84.    will run on Windows 95, Windows NT, MACH, Solaris, SunOS, HP-UX and
  85.    DEC OSF/1.
  86.  
  87.    The architecture of OpenStep was made public in late 1995 and since
  88.    then GNU is working on a public port of OpenStep to e.g. X11 based
  89.    UNIX systems.
  90.  
  91.    To express the new standard, OpenStep for MACH is now the correct
  92.    spelling for the formerly named NEXTSTEP product by NeXT, but it is
  93.    known that NeXT itself is still using the same version numbering
  94.    scheme for at least the MACH product line, so the first release of
  95.    OpenStep for MACH is equivalent to NEXTSTEP 4.0.
  96.  
  97.    OpenStep is supposed to be an industry standard for developing object
  98.    oriented, system independent, scalable solutions for client/server
  99.    architectures. It was adopted by Sun, Hewlett Packard and Digital. It
  100.    provides distributed applications through PDO (Portable Distributed
  101.    Objects) and D'OLE (Distributed OLE) based on CORBA. The usage of EOF
  102.    supplies object persistence with traditional relational databases. And
  103.    finally with WebObjects, objects are accessible through the internet
  104.    or in your own private network.
  105.  
  106.    OpenStep, like NEXTSTEP 3.3 provides several kits for software
  107.    developers like: Application Kit and Foundation Kit as well as Display
  108.    PostScript. Applications written for OpenStep are sourcecode
  109.    compatible to all other architectures running OpenStep, although FAT
  110.    binaries are only available under OpenStep for MACH.
  111.  
  112.    For the NEXTSTEP user OpenStep doesn't take away old known features.
  113.    In addition with OpenStep for MACH you will get MACH enhancements and
  114.    a new GUI as an option as well as all the known advantages of OpenStep
  115.    itself. Old applications will continue to run under OpenStep for MACH
  116.    and need to be recompiled to run under Windows 95, Windows NT,
  117.    Solaris, HP-UX and other OpenStep platforms.
  118.  
  119.    Because OpenStep isn't already released, this section is just
  120.    speculating and based on information from the usenet community.
  121.    OpenStep is sheduled for quarter two 1996.
  122.  
  123. 3.4 Objective-C
  124.  
  125.    Objective-C
  126.  
  127.    To develop applications NeXT uses Objective-C as its native
  128.    programming language. Objective-C is a more strict OO language then
  129.    C++ but covers C as well as C++. Because NeXT uses the GNU C/C++
  130.    compiler, you go with the most spreaded and tested C compiler
  131.    available for most UNIX platforms today. (Of course you can use
  132.    Objective-C on every platform on which gcc is available).
  133.  
  134.    Objective-C is different to other languages in the way it executes
  135.    code. Objective-C uses a runtime library to dynamically access objects
  136.    at runtime. This allows you to change objects at runtime etc. All this
  137.    goes with nearly no speed penalty, because hashing mechanisms are used
  138.    to access the different methods of an object.
  139.  
  140.    There is also ObjC which is an different product, available as a
  141.    commercial compiler for different operating systems. Don't mix up
  142.    things with by using the expression ObjC instead of Objective-C. For
  143.    shortcut purposes the NeXT community also uses the term ObjC/Obj-C but
  144.    of course thinks of Objective-C by NeXT.
  145.  
  146.    Objective-C isn't standardized, yet.
  147.  
  148.    In Objective-C you are able to mix code. E.g. you can use C++ and C in
  149.    any Objective-C program.
  150.  
  151.    Objective-C is a simple and concise object-oriented extension to
  152.    ANSI-C. It has a runtime messaging facility and offers dynamic
  153.    binding. Distributed objects are supported and the code is optimized
  154.    for native compilations.
  155.  
  156.    It's syntax and programming technique is much like in SmallTalk. Using
  157.    Objective-C you can even message objects in other applications, also
  158.    over a network!
  159.  
  160. 3.5 NEXTSTEP Developer
  161.  
  162.    NEXTSTEP Developer
  163.  
  164.    NEXTSTEP Developer is currently the only way to develop applications
  165.    under NEXTSTEP because it includes all the necessary include files and
  166.    libraries. (Of course you can get any GNU C version precompiled, but
  167.    it won't help you without the include files and linker libraries).
  168.  
  169.    In addition to a precompiled GCC, include files and the linker
  170.    libraries you will get the famous NeXT developer tools: ProjectBuilder
  171.    (your commando center for building applications and managing sources),
  172.    InterfaceBuilder (for designing the application's GUI and making
  173.    object connections), an graphical addition to GDB (GNU Debugger)
  174.    integrated in Edit, MallocDebug (for seeking memory leaks),
  175.    HeaderViewer (access class information in header files and in
  176.    documented form in a browser), DBModeler (for building data models,
  177.    based on Database Kit), Yap (an interactive PostScript interpreter and
  178.    viewer), IconBuilder (a very simple but extensible pixel-based editor
  179.    for creating icons) and popular UNIX utilities like GNU Emacs, yacc,
  180.    lex, vi...
  181.  
  182. 3.6 D'OLE
  183.  
  184.    D'OLE
  185.  
  186.    D'OLE is a shortcut for Distributed OLE. OLE is Microsoft's standard
  187.    for Object Linking and Embedding and is currently not distributable
  188.    across platforms. With D'OLE you can distribute OLE objects across the
  189.    network like e.g. in SOM by IBM. But D'OLE is more. It uses NeXT's
  190.    object model PDO (Portable Distributed Objects) from Unix to Windows
  191.    platforms and enables OLE objects to communicate with OpenStep objects
  192.    natively, which means without changing the application. OpenStep
  193.    objects behave like OLE objects and vice versa.
  194.  
  195.    D'OLE also supports EOF which enables a distributed computing
  196.    environment that provides an infinitely flexible choice of application
  197.    deployment of application deployment strategies.
  198.  
  199.    D'OLE uses the Foundation Framework, Distributed Object Framework and
  200.    other core classes. It comes bundled with C/Objective-C compiler and
  201.    GNU make, although Microsoft Visual C++ is required. Further you get a
  202.    portable nmserver, MACH emulation and on-line documentation.
  203.  
  204. 3.7 PDO --- Portable Distributed Objects
  205.  
  206.    PDO
  207.  
  208.    PDO is a shortcut for Portable Distributed Objects. In the near future
  209.    PDO will become CORBA 2.0 compliant.
  210.  
  211.    It is the industry's first product to provide a heterogeneous
  212.    client/server framework on objects. With PDO it is possible to deploy
  213.    objects on non-NEXTSTEP server machines and therefore deployed
  214.    anywhere in a network, wherever they are most appropriate for a task.
  215.  
  216.    PDO encapsulates low-level network protocols, making messaging a
  217.    remote object as straightforward as messaging a local object. You even
  218.    don't have to learn new programming tools or techniques, because PDO
  219.    is a subset of NEXTSTEP tools and objects. Because PDO makes object
  220.    location completely transparent to the application, the application
  221.    communicates with every object the same way regardless wether it is
  222.    local, in the local network or anywhere in the world.
  223.  
  224.    Because of the free location of objects, objects may get moved to
  225.    other locations, e.g. to optimize performance, without modification of
  226.    the application using it.
  227.  
  228.    Because PDO also runs on non-NEXTSTEP servers, it comes with it's own
  229.    set of classes, libraries and even an Objective-C++ compiler, etc.
  230.    Neverless you can build, maintain, etc. from any NEXTSTEP client
  231.    connected to a PDO server. The tools used for building the final
  232.    objects however are native to the server's OS.
  233.  
  234.    PDO comes with Foundation Framework, Distributed Objects Framework,
  235.    DOEventLoop and other core classes. Bundled tools are: Objective-C++
  236.    compiler, GDB, libg++, GNU make, Portable BuildServer, Portable
  237.    nmserver, Mach Emulation, NEXTSTEP's default system, on-line
  238.    documentation. Currently supported platforms are: HP-UX, SunOS,
  239.    Solaris, Digital UNIX.
  240.  
  241. 3.8 EOF --- Enterprise Objects Framework
  242.  
  243.    EOF
  244.  
  245.    EOF bridges the gap between objects and relational databases. With EOF
  246.    you can bring the advantage of object oriented design etc. to
  247.    applications which use relational databases. (Therefore you don't need
  248.    an object oriented database!)
  249.  
  250.    EOF clarifies many things. It supports a three-tier client/server
  251.    architecture by separating the user interface, business objects and
  252.    the database. In fact you can simply exchange the database (by
  253.    changing the adapter) and still use the same application!
  254.  
  255.    Developing under EOF doesn't limit you to e.g. Objective-C. EOF allows
  256.    the integration of e.g. 4GL code as well as SQL etc. all combined
  257.    under the advantage of NeXT's developer tools.
  258.  
  259.    EOF includes client and server software. It consists of the Enterprise
  260.    Object Modeler, runtime libraries and adapters for SYBASE and ORACLE
  261.    (other adapters available from the DBMS producers). It currently runs
  262.    under HP-UX, SunOS, Solaris, Digital UNIX and always requires PDO. For
  263.    client use you additionally need NEXTSTEP.
  264.  
  265. 3.9 WebObjects
  266.  
  267.    WebObjects
  268.  
  269.    WebObjects helps you building dynamic Web pages. It is targeted to the
  270.    server side of the Web and there mostly to the intranets, also most
  271.    people might find it very useful for the Internet, too. It is
  272.    operating system independent and runs under Windows NT, Solaris,
  273.    HP-UX, Digital UNIX and NEXTSTEP (Windows 95 announced).
  274.  
  275.    WebObjects contains development tools to build components for your
  276.    application logic, as well as a set of reusable components to manage
  277.    the rendering of your application. Because WebObjects is Java
  278.    compatible, you even can integrate Java applets in your application
  279.    today. It supports the standard http servers which have to support CGI
  280.    or NSAPI interface. WebObjects supports database access to Informix,
  281.    Oracle, Sybase and DB/2.
  282.  
  283.    What's unique about WebObjects is the ability to share the logic of
  284.    your Web application and your data with other internal applications.
  285.    It means that you are not required to maintain a dedicated database or
  286.    write specific application code for your Web application.
  287.  
  288.    Currently there are three versions of WebObjects: WebObjects,
  289.    WebObjects Pro and WebObjects Enterprise. WebObjects itself is freely
  290.    available to anybody interested in. WebObjects Pro contains PDO and
  291.    WebObjects Enterprise contains PDO and EOF with a special license to
  292.    connect to the Internet. But because WebObjects is a brand new
  293.    product, look at http://www.next.com/WebOjects/ for further
  294.    information.
  295.  
  296. 3.10 WWW Browser
  297.  
  298.    WWW Browser Browser OmniWeb NetSurfer SpiderWoman NetScape
  299.  
  300.    Several NEXTSTEP browsers are available for NEXTSTEP. The currently
  301.    most advanced browser is named 'OmniWeb'. OmniWeb is commercial in the
  302.    way that you need a license to use it in a network. A single user
  303.    license is free. OmniWeb seems to be continuesly updated and support
  304.    is known to be good. OmniWeb is also supporting a lot of well known
  305.    Netscape features.
  306.  
  307.    There is also a public domain WWW browser named 'SpiderWoman'. It's
  308.    plus is the NEXTSTEP look and feel (e.g. you navigate through the Web
  309.    like you navigate your filesystem with WorkspaceManager). Anyway
  310.    SpiderWoman is somehow unstable and it seems as if development
  311.    stopped.
  312.  
  313.    Another commercial browser is NetSurfer. Demos are available on the
  314.    ftp sites. This browser is preferred by several people because it
  315.    integrates ftp access very well. Anyway you have to pay for it.
  316.  
  317.    Netscape isn't available for NEXTSTEP and is unlikely to be ported.
  318.    The current state of Netscape seems to become more and more unclear
  319.    because the latest release with Java support is known to work unstable
  320.    on most systems. Also Netscape supports a lot of features which other
  321.    companies are not going to adopt anymore as it was in the early times.
  322.    Anyway you can use Netscape in the future under the most OpenStep
  323.    platforms.
  324.  
  325. 3.11 Newsreader
  326.  
  327.    Newsreader Alexandra NewsGrazer NewsFlash RadicalNews
  328.  
  329.    There are currently four well known newsreaders for NEXTSTEP.
  330.  
  331.    First there is Alexandra, a public domain newsreader and second there
  332.    is NewsGrazer (and unsupported NeXT product). You should test them to
  333.    get your personal favorite. The only real difference is the support of
  334.    NEXTSTEP 3.3J (Japanese) and flatfiles in NewsGrazer, while the
  335.    interface in Alexandra seems to be better to many people.
  336.  
  337.    NewsFlash is a commercial product which adds several features. As
  338.    Radical news it supports article threading, automated posting and
  339.    extraction of multi-part files. Demos are available on the ftp sites.
  340.    E-mail inquiries should go to support@wolfware.com. Further info is
  341.    available at: http://www.wolfware.com/
  342.  
  343.    RadicalNews is a commercial newsreader. It supports true article
  344.    threadin, quoted text highlighting, japanese and Latin-1 support,
  345.    URL-support, an interface to Digital Librarian, a sophisticated
  346.    coloring scheme and much more. Info is available at:
  347.    http://www.radical.com/.
  348.  
  349.    A note to both commercial versions: the community is very splitted
  350.    about which version is to prefer. In general it seems as if there are
  351.    no really 'killer features' so it prefers much to personal taste.
  352.    Demos are available and don't forget to test the free versions, too!